跳到主要内容

快速用 Docker 搭建环境

RocketMQ使用Docker Compose部署及使用

RocketMQ Broker 需要一个配置文件,按照上面的 Compose 配置,我们需要在 ./conf 目录下创建一个名为 broker.conf 的配置文件,内容如下:

brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
# 如果是本地程序调用云主机 mq,这个需要设置成 云主机 IP
# 如果 Docker 环境需要设置成宿主机IP
brokerIP1=172.26.128.1

访问

http://localhost:8080/#/
version: '3'
services:
namesrv:
image: apache/rocketmq:4.5.0
container_name: namesrv
ports:
- 9876:9876
volumes:
- ./data/namesrv/logs:/home/rocketmq/logs
command: sh mqnamesrv
broker:
image: apache/rocketmq:4.5.0
container_name: rmqbroker
ports:
- 10909:10909
- 10911:10911
- 10912:10912
volumes:
- ./data/broker/logs:/home/rocketmq/logs
- ./data/broker/store:/home/rocketmq/store
- ./data/broker/conf/broker.conf:/home/rocketmq/rocketmq-4.5.0/conf/broker.conf
command: sh mqbroker -n namesrv:9876 -c ../conf/broker.conf
environment:
JAVA_OPT_EXT: '-Xms256m -Xmx256m -Xmn128m'
depends_on:
- namesrv
rmqconsole:
image: styletang/rocketmq-console-ng
container_name: rmqconsole
ports:
- 38080:8080
environment:
JAVA_OPTS: -Drocketmq.namesrv.addr=namesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false
depends_on:
- namesrv